#include<iostream>
#include<algorithm>

using namespace std;

const int N=1e5+10;

int h[N],dp[N];
int n;


int main()
{
	cin>>n;
	for(int i=0;i<n;i++) cin>>h[i];
	fill(dp,dp+N,1);
	
	int sum=0;
	for(int i=0;i<n;i++){
		for(int j=0;j<i;j++){
			if(h[i]>h[j]) 
				dp[i]=max(dp[i],dp[j]+1);
		}
		sum=max(sum,dp[i]);
	}
	
	cout<<sum<<endl;
	
	return 0;
}
